package com.mdd.common.entity.order;

import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import java.math.BigDecimal;
import java.util.Date;

/**
 * TODO
 *
 * @Description
 * @Author 幻速
 * @Date 2023/12/7 11:38
 **/
@Data
public class OrderList {

    @ApiModelProperty(value = "订单id")
    private Long id;
    @ApiModelProperty(value = "订单编号")
    private String orderSn;
    @ApiModelProperty(value = "部门名称")
    private String mName;
    @ApiModelProperty(value = "门店名称")
    private String storeName;
    @ApiModelProperty(value = "车辆id")
    private String vehicleId;
    @ApiModelProperty(value = "车辆名称")
    private String vehicleName;
    @ApiModelProperty(value = "押金")
    private BigDecimal deposit;
    @ApiModelProperty(value = "每期租金")
    private BigDecimal eachIssue;
    @ApiModelProperty(value = "其他费用")
    private BigDecimal otherExpenses;
    @ApiModelProperty(value = " 租赁类型:1、月 2、周 3、日 ")
    private Integer leaseType;
    @ApiModelProperty(value = "服务类型 1、以租代购 2、纯租 3、月供 4、分期")
    private Integer serviceType;
    @ApiModelProperty(value = "租赁周期")
    private Integer leasePeriod;
    @ApiModelProperty(value = "当前租期")
    private Integer currentPeriod;
    @ApiModelProperty(value = "用户id")
    private Long userId;
    @ApiModelProperty(value = "用户名称")
    private String username;
    @ApiModelProperty(value = "手机号码")
    private String mobile;
    @ApiModelProperty(value = " 订单状态：0待支付 1待签约 2车辆准备中 3待提车 4租赁中 5待结算 6待确认 7已完成 8已取消")
    private Integer status;
    @ApiModelProperty("创建时间")
    @TableField(fill = FieldFill.INSERT,value = "create_time")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createTime;

    @ApiModelProperty(value = " 订单车辆状态：0未交车 1已交车 2已还车")
    private Integer orderVehicleStatus;
}
